home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mission 3
/
Mission 3.zip
/
Mission 3.iso
/
demovers
/
ergo_pro
/
beispiel
/
pp_exmpl.lst
Wrap
File List
|
1998-10-29
|
3KB
|
72 lines
' ------------------------------------------------------------------------------
' PP_EXMPL.GFA : Demonstration der Möglichkeiten des Präprozessors von ergo!-pro
' ------------------------------------------------------------------------------
' Das Programm liest zwei Zahlen ein und gibt Summe und Produkt aus. Mittels
' des Präprozessors sollen daraus verschiedene Versionen erzeugt werden:
' 1. Die 'Normalversion' gibt nur die Summe der beiden Zahlen aus.
' 2. Die 'Profiversion' berechnet zusätzlich noch das Produkt.
' 3. Eine 'Demoversion' arbeitet wie die Normalversion, ist aber auf Zahlen
' bis 10 beschränkt.
' Außerdem soll für alle drei Versionen die Kontrollanzeige der eingegebenen
' Zahlen eliminiert werden, die nur während der Entwicklung nötig ist.
' (Jaja, es gibt sinnvolleres, aber zur Demonstration reicht's)
'
' Es werden drei PP-Befehle verwendet:
' 1. '#db' markiert die Teile, die zum Debuggen eingebaut wurden und vor der
' Comilierung der Demo-,Normal- oder Profiversion entfernt werden sollen.
' 2. '#PR' markiert die Teile, die nur zur PROFI-Version gehören. Sie werden
' für die Demo- und Normalversion entfernt.
' 3. 'DEM' markiert die Teile, die nur zur Demo-Version gehören. Sie werden
' für die Profi- und Normalversion entfernt.
' Außerdem sind zwei symbolische Variablen definiert. Hier für ist die fest
' vorgegebene Zeichenfolge '+SYM' zuständig.
'
' Um nun aus diesem Quelltext die unterschiedlichen Versionen zu erzeugen, muß
' im Dialog des Präprozessors folgendes eingetragen sein:
'
' Für die Demoversion: #PR #db
' Für die Profiversion: #db DEM
' Für die Normalversion: #db DEM #PR
'
' Außerdem sollte das Kreuz bei 'Symbolische Variablen..' und 'Unbenutzte Pro-
' zeduren..' gesetzt sein.
' WICHTIG: Groß-Klein-Schreibung bei den PP-Befehlen beachten!
' ------------------------------------------------------------------------------
' Symbolische Variablen definieren:
nochmal&=1 !+SYM
aufhoeren&=2 !+SYM
'
REPEAT
'
neueingabe: ! -DEM
INPUT "Zwei Zahlen eingeben: ",a#,b#
@kontrolle ! -#db
'
' --DEM
IF a#>10 OR b#>10
PRINT "In Demoversion nur Zahlen bis 10 erlaubt!"
GOTO neueingabe
ENDIF
' --DEM
'
PRINT "Die Summe beträgt ";a#+b#
PRINT "Das Produkt beträgt ";a#*b# ! -#PR
'
INPUT "Noch eine Rechnung (1=ja, 2=nein)? ",eingabe&
'
UNTIL eingabe&=aufhoeren&
END
'
PROCEDURE kontrolle
'
' Achtung: Diese Prozedur wird automatisch eliminiert, obwohl sie nicht mit
' einem Präprozessor-Befehl markiert ist. Da nämlich ihr einziger Aufruf
' mittels '-#db' aus dem Programm entfernt wird, erkennt ergo!, daß es sich
' um eine 'unbenutzte Prozedur' handelt, und beseitigt sie automatisch
' (wenn diese Option im Präprozessor-Dialog angekreuzt ist).
'
PRINT "Es wurden die Zahlen ";a#;" und ";b#;" eingegeben!"
~INP(2)
'
RETURN